package it.polimi.TravelDream.ejb.dtos;

import java.util.Date;
import java.util.List;

import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.validator.constraints.NotEmpty;

public class PackageDTO {

	private int travelID;
	@NotEmpty
	private String name;
	@NotEmpty
	private String description;
	@NotEmpty
	private String city;
	@NotEmpty
	private String nation;
	@Temporal(TemporalType.DATE)
	private Date startingDate;
	@Temporal(TemporalType.DATE)
	private Date expirationDate;
	private int placesAvailable;
	private boolean lastMinute;

	//Impiegato che ha creato il pacchetto
	private UserDTO employee;
	//Lista escursioni offerte
	private List <ExcursionDTO> excursions;
	//Lista di camere offerte
	private List <RoomDTO> rooms;
	//Lista di voli offerti
	private List <FlightDTO> flights;
	
	public int getTravelID() {
		return travelID;
	}
	public void setTravelID(int travelID) {
		this.travelID = travelID;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
	public String getCity() {
		return city;
	}
	public void setCity(String city) {
		this.city = city;
	}
	public String getNation() {
		return nation;
	}
	public void setNation(String nation) {
		this.nation = nation;
	}
	public Date getStartingDate() {
		return startingDate;
	}
	public void setStartingDate(Date startingDate) {
		this.startingDate = startingDate;
	}
	public Date getExpirationDate() {
		return expirationDate;
	}
	public void setExpirationDate(Date expirationDate) {
		this.expirationDate = expirationDate;
	}
	public int getPlacesAvailable() {
		return placesAvailable;
	}
	public void setPlacesAvailable(int placesAvailable) {
		this.placesAvailable = placesAvailable;
	}

	public boolean isLastMinute() {
		return lastMinute;
	}
	public void setLastMinute(boolean lastMinute) {
		this.lastMinute = lastMinute;
	}

	public UserDTO getEmployee() {
		return employee;
	}
	public void setEmployee(UserDTO employee) {
		this.employee = employee;
	}
	public List<ExcursionDTO> getExcursions() {
		return excursions;
	}
	public void setExcursions(List<ExcursionDTO> excursions) {
		this.excursions = excursions;
	}
	public List<RoomDTO> getRooms() {
		return rooms;
	}
	public void setRooms(List<RoomDTO> rooms) {
		this.rooms = rooms;
	}
	public List<FlightDTO> getFlights() {
		return flights;
	}
	public void setFlights(List<FlightDTO> flights) {
		this.flights = flights;
	}
	
}
